package com.shujia.spark.core

import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.rdd.RDD

object Demo06Filter {
  def main(args: Array[String]): Unit = {
    /**
     * filter：转换算子
     * 需要接收一个函数f：同RDD中每条数据的类型一致 => 返回值类型必须是布尔类型
     * 如果返回true，则保留数据
     * 如果返回false，则过滤数据
     */
    val conf: SparkConf = new SparkConf()

    conf.setAppName("Demo06Filter")
    conf.setMaster("local")

    val sc: SparkContext = new SparkContext(conf)

    val stuRDD: RDD[String] = sc.textFile("spark/data/stu/students.txt")

    // 过滤出年龄大于23的学生
    stuRDD.filter(line => line.split(",")(2).toInt > 23)
      .foreach(println)


  }

}
